﻿@using SuperStar.Models
@model List<Bill>
@{
    ViewBag.Title = "Chi tiết giỏ hàng";
    var resellers = (List<Reseller>)ViewData["resellers"];
    var debugger = (Dictionary<String, String>)ViewData["debugger"];
}

@section JavaScript
{
    <script type="text/javascript" src="~/Content/jtable/jquery.jtable.js"></script>
    <script src="~/Content/validationEngine/jquery.validationEngine-vi.js" type="text/javascript"></script>
    <script src="~/Content/validationEngine/jquery.validationEngine.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.cookie.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $('.tabs').tabs({ cookie: { expires: 365} });
            $("#accordion").accordion({
                autoHeight: false,
                navigation: true
            });
        });
    </script>
}
@section Styles
{
    <link href="~/Content/validationEngine/validationEngine.jquery.css" rel="stylesheet" type="text/css" />
    <link href="~/Content/jtable/themes/lightcolor/blue/jtable.css" rel="stylesheet" type="text/css" />
    <link href="~/Content/theme/mystyle_cart.css" rel="stylesheet" type="text/css" />
}

@if (Roles.IsUserInRole("Debugger"))
{
    <div id="content">
	<div class="box">
		<h2 class="head-big-title">
			<a href="#"><span>Chế độ demo truy xuất đồng thời</span></a>
		</h2>
        <div class="sub_content" style="height: 54px;">
              @using (Html.BeginForm("Index", "Cart", FormMethod.Post))
              {
                  <br/> 
                  <span>Chọn chế độ:</span>
                  <select style="width:500px;" name="debugger" onchange="this.form.submit()">
                    @foreach (var d in debugger)
                    {
                        <option @(Session["cart_debugger"].Equals(d.Key) ? "selected" : "") 
                                    value="@d.Key">@d.Value</option>
                    }
                </select>
              }
        </div>
    </div>
    </div>
}
 <div id="content">
	<div class="box">
		<h2 class="head-big-title">
			<a href="#"><span>Thông tin giỏ hàng</span></a>
		</h2>
        <div class="sub_content" style="padding: 10px;width: 752px;">
            <div id="accordion">
                @foreach (var b in Model)
                {
                <h3>Hóa đơn: #@b.Id</h3>
                <div class="tabs">
                    <ul>
                        <li><a href="#tabs-@b.Id-1">Thông tin sản phẩm</a></li>
                        <li><a href="#tabs-@b.Id-2">Tặng phẩm khuyến mãi</a></li>
                        <li><a href="#tabs-@b.Id-3">Thông tin thanh toán</a></li>
                    </ul>
                    <div id="tabs-@b.Id-1">
                        <div class="img_sp2">
                            <div class="product_title">@b.Product.Name</div>
                            <img src="/Content/images/products/@b.Product.Image" />
                            <div class="pro_info">
                                <div class="product_price">Giá: @String.Format("{0:N0}", @b.Price) VNĐ </div>
                                <div class="product_point">Điểm thưởng: @b.GiftPoint</div>
                                <br/>
                            </div>
                        </div>
                    </div>
                    <div id="tabs-@b.Id-2">
                        <div class="s_content">
                            Lưu ý:<br>
                                  <p>- Bạn được thưởng <span>@b.GiftPoint <sup>đ</sup></span> khi đã chọn nhãn hàng "<span>@b.Product.Name</span>"</p>
                                  <p>- Để nhận các tặng phẩm hãy nhập số lượng các tặng phẩm bên dưới.</p>
                                  <p>- Bạn được phép hủy mua hàng và thay đổi tặng phẩm đến hết ngày: <span>@String.Format("{0:dd/MM/yyyy hh:mm}", @b.Product.EndSaleDate)</span></p>
                                  <p>- Sản phẩm của bạn sẽ được chuyển đến đại lý vào ngày: <span>@String.Format("{0:dd/MM/yyyy hh:mm}", @b.Product.StartReceiveDate)</span></p>
                                  <p>- Điểm thưởng còn lại: <span id="infoRemainPoint">@b.PointAmount đ</span></p>
                        </div>
                        
                        <div id="BillDetailTable-@b.Id" style="width: 695px; margin: auto;"></div>
                        <script type="text/javascript">

                            $(document).ready(function () {
                                //Prepare jtable plugin
                                $('#BillDetailTable-'+@b.Id).jtable({
                                    title: 'Danh sách sản phẩm khuyến mãi',
                                  
                                        actions:
                                        {
                                            listAction:
                                            '/Cart/GetBillDetails/?billId=@b.Id',
                                          @if (@b.IsAllowedModifyPromotion)
                                          {
                                           <text>
                                            deleteAction:
                                            '/Cart/DeleteBillDetail?billId=@b.Id',
                                            updateAction:
                                            '/Cart/UpdateBillPromotionDetail?billId=@b.Id',
                                            createAction:
                                            '/Cart/CreateBillDetail?billId=@b.Id'
                                           </text>
                                          }
                                        },
                                   
                                    fields: {
                                        id: {
                                            title: 'Mã KM',
                                            key: true,
                                            create: false,
                                        },
                                        promotionId: {
                                            type: 'hidden',
                                            key: true,
                                            list: false,
                                        },
                                        name: {
                                            title: 'Tên SP Khuyến mãi',
                                            width: '30%',
                                            create: false,
                                            type: 'readonly',
                                        },
                                        productPromotion: {
                                            title: 'Chọn sản phẩm khuyến mãi',
                                            edit: false,
                                            list: false,
                                            cache: false,
                                            options: '/Cart/GetAvaildProductPromotions?billId=@b.Id',
                                        },
                                        remainAmount: {
                                            title: 'Số lượng còn',
                                            type: 'readonly'
                                        },
                                        maxGiftAmount: {
                                            title: 'SL nhận tối đa',
                                            type: 'readonly'
                                        },
                                        giftPointRequired: {
                                            title: 'Điểm yêu cầu',
                                            type: 'readonly'
                                        },
                                        remainPoint: {
                                            title: 'Số điểm thưởng còn lại',
                                            type: 'readonly',
                                            edit: false,
                                            list: false,
                                        },
                                        quantity: {
                                            title: 'SL chọn',
                                            defaultValue:1
                                        }
                                    },
                                    formCreated: function (event, data) {
                                        data.form.find('#Edit-productPromotion').change(function() {
                                            var promotionId = $(this).val();
                                            $.getJSON("/Cart/GetPromotionDetail/", { 'promotionId': promotionId, 'billId':@b.Id},
                                                function(json) {
                                                data.form.find('#remainAmount').val(json[0].remainAmount);
                                                data.form.find('#maxGiftAmount').val(json[0].maxGiftAmount);
                                                data.form.find('#giftPointRequired').val(json[0].giftPointRequired);
                                                data.form.find('#remainPoint').val(json[0].remainPoint);
                                             });
                                        }).change();
                                        // Validate controls
                                        data.form.find('input[name="Quantity"]').addClass(
                                          'validate[required,custom[number]]');
                                        data.form.validationEngine();
                                    },
                                    formSubmitting: function (event, data) {
                                        return data.form.validationEngine('validate');
                                    },
                                    formClosed: function (event, data) {
                                        data.form.validationEngine('hide');
                                        data.form.validationEngine('detach');
                                        updateForm();
                                    },
                                    recordDeleted : function (event, data) {
                                        updateForm();
                                    },
                                    recordUpdated : function (event, data) {
                                        updateForm();
                                    },
                                    recordAdded  : function (event, data) {
                                        updateForm();
                                    }
                                });
                                function updateForm () {
                                    // Cập nhật lại form và điểm thưởng lưu ý
                                    $('#BillDetailTable-'+@b.Id).jtable('load');
                                    $.getJSON("/Cart/GetPromotionRemainPoint/", { 'billId': @b.Id },
                                        function(json) {
                                            $("#infoRemainPoint").text(json+' đ');
                                    });
                                }
                                //Load ProductTable list from server
                                $('#BillDetailTable-'+@b.Id).jtable('load');
        
                            });
                       </script>
                    </div>
                    <div id="tabs-@b.Id-3">
                        <div class="chosen_reseller">
                             @using (Html.BeginForm("ChangeReseller", "Cart", FormMethod.Post))
                             {
                                 <div>Đại lý nhận  hàng: &nbsp; &nbsp;
                                         <select name="resellerId" onchange="this.form.submit()">
                                             @foreach (var r in resellers)
                                             {
                                                 <option @(r.Id == b.Reseller.Id ? "SELECTED" : "") value="@r.Id">@r.Name</option>
                                             }
                                         </select>
                                   </div>
                                 @Html.Hidden("billId", b.Id)
                             }
                        </div>
                        <div class="clearb"></div>
                        <table class="invoice" cellpadding="0" cellspacing="0" border="1">
                            <tr>
                                <th width="300">Thông tin thanh toán</th>
                                <th width="300">Thông tin nhận sản phẩm</th>
                            </tr>
                            <tr>
                                <td valign="top">
                                    <p>- Hóa đơn số: #@b.Id (<font color="red">@b.StatusSelling.Name</font>)</p>
                                    <p>- Ngày đặt hàng: @String.Format("{0:dd/MM/yyyy hh:ss}", b.DateAdded)</p>
                                    <p>- Sản phẩm mua: <a href="/Product/Detail/@b.Product.Id">@b.Product.Name</a></p>
                                    <p>- Tặng phẩm khuyến mãi :
                                        <p class="promotion_cart">
                                            @foreach (var bDetail in b.BillDetails)
                                            {
                                                @bDetail.ProductPromotion.Name @:(Số lượng @bDetail.Quantity) <br/>
                                            }
                                        </p>
                                        Tổng thanh toán: <span class="invoice_price">@String.Format("{0:N0}", b.Price)<sup>đ</sup> VNĐ</span></p>
                                </td>
                                <td valign="top">
                                    <p>- Tên đại lý: @b.Reseller.Name</p>
                                    <p>- Địa chỉ: @b.Reseller.Address</p>
                                    <p>- Ngày bắt đầu nhận hàng: @String.Format("{0:dd/MM/yyyy}", b.Product.StartSaleDate)</p>
                                    <p>- Ngày kết thúc đầu nhận hàng: @String.Format("{0:dd/MM/yyyy}", b.Product.EndSaleDate)</p>
                                    <p>- Ngày nhận hàng: @(b.ReceivedDate != null ? @String.Format("{0:dd/MM/yyyy}", b.Product.EndSaleDate) : "Không")</p>
                                </td>
                            </tr>
                        </table>
                        @if (b.IsAllowedModifyPromotion)
                        {
                            using (Html.BeginForm("CancelBill", "Cart"))
                            {
                                 @Html.Hidden("billId", b.Id)
                                 <div class="control"><input type="submit" value="Hủy mua hàng" name="submit" /></div>
                            }
                        }
                        
                    </div>
                </div><!--<div class="tabs">-->
                }
            </div><!--<div id="accordion">-->
        </div><!--End sub_content-->
	</div>
    </div>